Repository navigation
blog: one more reading, then it cleared - #931
Conversation
Adds a bilingual post (EN + RU) about the disk-halt hysteresis mechanism built for the trinity-fpga autonomous loop's tripwire system, and its first real-world test: a genuine disk crisis (0.18 GiB -> 127 MiB free) that the loop correctly held at HALT for one extra confirming reading before clearing, rather than flapping to RUNNING on the first good reading after recovery. Receipts point at the three relevant trinity-fpga commits (the original tripwires, the hysteresis/flap-detection addition, and the commit recording the real crisis). Open questions are explicit about what this does and does not show: the state machine is verified against production data, but the crisis's root cause was never identified, and flap detection itself has not yet fired for real in this run. Verified with npm run build:ci (exit 0) and by grepping the built per-slug chunk for both English and Russian body content.
|
Reviewer bee Y: left open, not merged. (1) CONFLICTING with main (apps/website/src/data/blog/index.ts and posts.ts moved on; the post is not on main under this or any similar slug). (2) The required status 'T27 work report' is missing/failed on this head, so the ruleset blocks it. (3) A blog post is a publication: per the owner's rule it ships only on his explicit yes, and dated claims from September would need re-measuring before then. If the owner wants it, the author rebases, re-checks the numbers and adds the work report; otherwise close it. |
|
bee review: left open -- CONFLICTING with main (head 80e2c4e). The post body is not on main yet, but |
Conflicts in apps/website/src/data/blog/index.ts and posts.ts: both sides added entries at the top of the same lists. Resolved by keeping main's files and re-inserting this PR's post entry, body import and bodies-map line. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
X Brain Health CheckScore: 100.0/100 X Brain is above merge threshold |
…g index Main's postsIndex is newest-first by date. The earlier conflict resolution put this entry at the top; move it to its date position and anchor the body import and bodies-map line next to the neighbouring post, so the four pending blog PRs no longer collide at the same lines. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
🧪 Brain Stress Test ResultsTests: 261/261 passed, 0 leaked |
Summary
A bilingual (EN + RU) blog post about the trinity-fpga autonomous loop's disk-halt hysteresis mechanism, and its first real-world test.
The story: a tripwire that only looks at the current disk reading has no memory — a bounce near a threshold flips the verdict every cycle. Built two small state machines (hysteresis requiring 2 consecutive recovery readings before clearing; flap detection for repeated halt episodes) three days before a genuine disk crisis (0.18 GiB -> 127 MiB free) tested them for real. The mechanism held the verdict at HALT for one extra confirming reading even though the raw disk state had already recovered, then cleared on the next check — exactly the designed behavior, now proven against production data instead of only synthetic test fixtures.
Receipts: three trinity-fpga commits (the original tripwire mechanism, the hysteresis/flap-detection addition, and the commit recording the real crisis + proof).
Open questions are explicit about scope: the crisis's root cause was never identified (something outside the loop's visibility resolved it); flap detection hasn't fired for real yet (only tested against seeded synthetic data); a detected flap currently only prints a warning rather than writing a formal anomaly record.
Test plan
npm run build:ciexits 0one-more-reading-then-it-cleared-*.js) greped for both EN and RU body content — confirmed present🤖 Generated with Claude Code
{ "version": 1, "head_sha": "fc34ff9092424e5e9e6631533337d6fc86c79a73", "summary": "Adds the bilingual blog post 'one-more-reading-then-it-cleared' to the t27.ai blog and merges current main into the branch, resolving the blog registry conflicts by keeping both sides.", "changes": [ "Add apps/website/src/data/blog/bodies/one-more-reading-then-it-cleared.ts with the English and Russian post bodies (59 lines).", "Add the post's metadata entry (30 lines: title, summary, date, tags, receipts, openQuestions, ru) in apps/website/src/data/blog/index.ts, placed at its date position because main's index is ordered newest-first.", "Register the body in apps/website/src/data/blog/posts.ts with one import line and one entry in the bodies map, each next to the neighbouring post's lines.", "Merge origin/main into the branch; index.ts and posts.ts conflicted because both sides prepended entries, resolved by taking main's files and re-inserting only this PR's three additions; a follow-up commit moved them off the shared top-of-list anchor so the four pending blog PRs do not collide." ], "tests": [ { "command": "CI / Build & Test (zig build, tests, format, schema checks)", "status": "passed", "result": "Build and Test job succeeded on earlier head eafe5dbf1, before the date-order commit.", "evidence": "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/gHashTag/trinity/actions/runs/37224828374/job/111502217430" }, { "command": "S3AI Brain CI / Build Check", "status": "passed", "result": "Brain CI build check job succeeded on earlier head eafe5dbf1, before the date-order commit.", "evidence": "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/gHashTag/trinity/actions/runs/37224828284/job/111502217248" }, { "command": "Codegen Validation / Validate VIBEE Codegen", "status": "passed", "result": "VIBEE codegen validation job succeeded on earlier head eafe5dbf1, before the date-order commit.", "evidence": "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/gHashTag/trinity/actions/runs/37224828362/job/111502217509" }, { "command": "tsc --noEmit --strict on blog index.ts, posts.ts, types.ts and the new body file", "status": "passed", "result": "TypeScript 5.8.3 typecheck of the blog data files exited 0 with no diagnostics on this head.", "evidence": "local run in a /tmp worktree; also passed after simulating all four blog PRs merged into main in sequence" }, { "command": "Website checks: npm ci, ARIA references, typecheck ratchet, API contract, check:silicon", "status": "failed", "result": "ARIA, typecheck ratchet and API contract steps passed; check:silicon failed on an unclassified gf16_attn.t27 spec that this PR does not touch, and the same job also fails on main; run on the earlier head before the date-order commit.", "evidence": "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/gHashTag/trinity/actions/runs/37224828248/job/111502217125" }, { "command": "npm run build:ci after the merge with main", "status": "not_run", "result": "Production Vite build was not run on the merged head; the Website checks job stops before it.", "evidence": "Website checks job steps after check:silicon were skipped" } ], "limitations": [ "The production Vite build and a rendered-page check were not run on the merged head; only the typecheck ratchet covered the new TypeScript files.", "Website checks is red on this head and on main because of check:silicon, a pre-existing gap unrelated to the blog files in this PR.", "The post's factual claims were reviewed by its original author when written; this merge pass did not re-verify the external receipts it links.", "CI on the final head was still queued when this report was written; the recorded CI results are from the earlier merge head, and the final commit only moves lines within index.ts and posts.ts." ], "tags": [ "Zig", "Reliability", "Automation", "Blog" ], "blog": { "title": "One more reading, then it cleared", "summary": "Publishes the post 'One more reading, then it cleared' on the t27.ai blog in English and Russian, with its receipts and open questions, after bringing the branch up to date with main.", "outline": [ "A disk-halt tripwire that reads only the current value has no memory, so a reading bouncing near the threshold can flip the halt verdict on every single cycle.", "The post describes two small state machines added in trinity-fpga: hysteresis that needs two consecutive recovery readings, and flap detection over repeated halt episodes.", "Three days later a real disk crisis took free space down to about 127 MiB, and the monitor held HALT for one extra confirming reading before clearing on the next check.", "It is explicit that the root cause of that crisis was never identified, and that something outside the loop's visibility, probably a reboot or cache clear, resolved it.", "Flap detection has only been exercised on seeded synthetic data, and a detected flap prints a warning rather than writing a durable anomaly record, which the post says." ] } }